package com.upay.android.domain.transaction;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import org.apache.commons.lang.builder.ToStringBuilder;

public class TransactionLine implements Serializable {

	/* ---- Constants ---- */
	private static final long serialVersionUID = 201203032116L;
	
	/* ---- Instance Variables ----*/

	private Long id = null;
	private BigDecimal value = null;
	private Date date = null;

	/* ---- Constructors ---- */
	
	public TransactionLine() {
		super();
	}
	
	public TransactionLine(BigDecimal value, Date date) {
		super();
		this.value = value;
		this.date = date;
	}

	public TransactionLine(long id, BigDecimal value, Date date) {
		this(value, date);
		this.id = id;
	}

	
	/* ---- Business Methods ----*/
	
	public String toString() {
		return new ToStringBuilder(this)
			.appendSuper(super.toString())
			.append("id", id)
			.append("value", value.toString())
			.append("date", date)
			.toString();
	}

	/* ---- Getters and Setters ----*/

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	/**
	 * @return the value
	 */
	public BigDecimal getValue() {
		return value;
	}

	/**
	 * @param value the value to set
	 */
	public void setValue(BigDecimal value) {
		this.value = value;
	}

	/**
	 * @return the date
	 */
	public Date getDate() {
		return date;
	}

	/**
	 * @param date the date to set
	 */
	public void setDate(Date date) {
		this.date = date;
	}

	
}
